package com.example.demo.程序员面试金典;

/**
 * @author：zzc
 * @date: 2022/8/23
 */
public class 判定字符是否唯一 {

    //实现一个算法，确定一个字符串 s 的所有字符是否全都不同。
    //
    //示例 1：
    //
    //输入: s = "leetcode"
    //输出: false
    //示例 2：
    //
    //输入: s = "abc"
    //输出: true

    //根据示例，可以假定字符串中只包含小写字母（实际验证，也符合假设）。
    //
    //用 bitmap 标记小写字母是否出现过。
    // todo

    public static boolean isUnique(String astr) {
        int bitmap = 0;
        for (char c : astr.toCharArray()) {
            int pos = c - 'a';
            if ((bitmap & (1 << pos)) != 0) {
                return false;
            }
            bitmap |= (1 << pos);
        }
        return true;
    }

    public static void main(String[] args) {
        System.out.println(isUnique("asdad"));
    }
}
